Skip to main content link. Accesskey S
  • Help
  • HCL Logo
  • HCL Lotus Expeditor wiki
  • THIS WIKI IS READ-ONLY. Individual names altered for privacy purposes.
  • HCL forums and blogs
  • Home
  • Product Documentation
  • Community Articles
Search
Community Articles > Using the Lotus Expeditor Integrator Platform > Using Lotus Expeditor Integrator - Additional Operating Functions
  • Share Show Menu▼
  • Subscribe Show Menu▼

Recent articles by this author

Add New Logic-ACS Service

This section explains how the central processing unit of the Expeditor integrator, the Expeditor integrator Application Control Service (ACS), can be configured to run custom business processes (use cases). Introduction to the Expeditor integrator Application Control Service Expeditor ...

Using Expeditor Integrator Reference Information

This section contains example listings of selected XML messages. APPENDIX A – Example Messages DBRecordUpdate message with SQL statement Create Table Example (SQL) Listing 45: XML message example for creating table menu in a local Derby database SampleDb using SQL in message ...

Using Lotus Expeditor integrator - Limitations

This section lists the currently configured limitations of the Expeditor integrator. Message Size The message size is currently limited to 10 MByte . This can be configured in the XPDinteg.xml file, but should only be done with care. Many large messages can dramatically slow down the ...

Using Lotus Expeditor integrator - Limitations and Known Issues

This section lists the currently configured limitations of the Expeditor integrator. Message Size The message size is currently limited to 10 MByte. This can be configured in the XPDinteg.xml file, but should only be done with care. Many large messages can dramatically slow down the processing ...

Using Lotus Expeditor Integrator - Additional Operating Functions

This section covers additional use cases that simplify the remote operation and control of the Expeditor integrator Transfer of large files in multiple messages In addition to the underlying messaging system, IBM Lotus Expeditor integrator can handle large resources on application layer as ...
Community articleUsing Lotus Expeditor Integrator - Additional Operating Functions
Added by ~Zach Cisnupulader | Edited by ~Emile Xannilynivu on May 31, 2013 | Version 2
  • Actions Show Menu▼
expanded Abstract
collapsed Abstract
No abstract provided.
Tags: Integrator
ShowTable of Contents
HideTable of Contents
  • 1 Transfer of large files in multiple messages
  • 2 Destination file naming convention and algorithms
  • 3 Add footer to generated target files
  • 4 Browse directory
  • 5 Drain queues
  • 6 Browse queues
  • 7 Execute Script
  • 8 Platform restart
  • 9 Configuration change process
  • 10 Application update process
  • 11 Run in Maintenance Mode
  • 12 Put in Local Maintenance Mode (TECHNOLOGY PREVIEW CODE)
  • 13 Perform Requested Housekeeping
  • 14 Problem Determination Flow for IBM Support (ISA)
  • 15 Reliable Data Exchange through Messaging
This section covers additional use cases that simplify the remote operation and control of the Expeditor integrator

Transfer of large files in multiple messages


In addition to the underlying messaging system, IBM Lotus Expeditor integrator can handle large resources on application layer as well. At the messaging back-end, large resources can be split and transferred by multiple messages in order to get around limitations of the Expeditor micro broker and bridge (see limitations in Ref_1). These resources must be reassembled by the Expeditor integrator appropriately. The Application Control Service (ACS) Activitiy MsgToFileActivity contains the algorithm for converting multiple messages to files.

The Queue Dispatcher Service recognizes messages that carry split resources in their payloads by the set sequence numbers and the end of data identifier. The Queue Dispatcher can also be configured to use a timer value to build a single target resource out of multiple messages (e.g. assemble all messages of the same type which were received within the last 10 minutes and write them into a single target file). The Queue Dispatcher Service puts these messages into a common sequence by setting the SequenceNumber and the EoD (End-of-Data) message header properties appropriately.

For file transfer, there are three possible scenarios to consider when messages are sent to the Expeditor integrator (i.e. they arrive in the “Msg2FTPQ”):
  1. A file is sent as payload in a single JMS message where the payload is simply sent directly to the FTP server as a single file.
  2. A file is sent as payload in a number of JMS messages within a given period of time where the message payloads are concatenated together in a common file when this time period has elapsed.
  3. A file is sent as payload in a number of JMS messages delimited by an ”end of file” flag where the message payloads are concatenated together before sending to the FTP server when this flag appears.

The MsgToFileActivity only needs to recognize case 1) and case 3). For case 2), the Queue Dispatcher Service has already split the messages received within the given time interval (BuildInterval) into a sequence of messages that are clearly labeled by set SequenceNumbers and the EoD. The OSGi Event Admin event which triggers the corresponding flow is fired after the BuildInterval interval is over. This means that the MsgToFileActivity only needs to pull all messages that belong to one sequence of the corresponding queue.

As already discussed in previous chapters, the target file is created out of the following JMS custom message header properties:
  • MessagePurpose and
  • ResourceType
  • SequenceNumber, EndofData and BuildInterval

These properties are the minimal settings for a received message carrying a file. Using the ResourceType as key, a default configuration for the target file can be retrieved from the Expeditor integrator’s local configuration. But, if ResourceType is not provided: TransferType, DestinationPath and DestinationName are required for determining the target file (additional properties might even be required, see chapter 2.4.1 JMS Custom Header Creation for Message Transfer between Back-end and Expeditor integrator and Table 3). Table 12 shows the algorithm for the file assembling out of multiple messages.

Table 12: Algorithm for assembling files from multiple messages
File Transfer Options
JMS Custom Message Header Properties
(Refer to Table 2 in chapter 2.3 and Table 3 in chapter 2.4.1.)
Comment
SequenceNo
EndOfData
BuildInterval
Single file in a single message
0
true
0
Put payload of this message in corresponding target file (determined by JMS Custom Message properties and/or local XPDinteg Appl configuration).
Single file in multiple sequenced messages (of the same ResourceType and with a EOD indicator)
1
false
0
First message of a sequence of messages; collect all messages 1…n until EndOfData equals TRUE and write all payloads into a common file.
<>1
true
0
Messages after first message out of a sequence of messages; collect all messages 1…n until EndOfData equals TRUE and write all payloads into a common file.
<>1
false
0
Last message out of a sequence of messages; collect all messages 1…n until EndOfData equals true and write all payloads into a common file (determined by JMS Custom Message properties and/or local Expeditor integrator configuration.)

Note: If the JMS Custom Header property BuildInterval is set to ‘-1’, the configured default value in the XPDinteg.xml file is used:


…
<dispatcher>
<build-interval>60000</build-interval>
…


Destination file naming convention and algorithms


For file transfer activities, the Application Control Service (ACS) Activity MsgToFileActivity is responsible for defining the name of the target file. The target file names are defined by the
  • DestinationPath and the
  • DestinationName

properties that are either specified by the JMS custom headers or in the local Expeditor integrator’s configuration. The following specification applies for MessagePurpose=FileTransfer:
  1. DestinationPath and DestinationName are optional JMS header properties and can be provided independently, e.g.
    JMS-Header property values: DestinationPath=not set, DestinationName=VERKASS/ITEMRSF.TXT and
    Configured default settings in XPDinteg.xml: DestinationPath=C:/POS_DAT, default DestinationName=ITEMR.TXT
    become the destination file of C:\POS_DAT\VERKASS\ITEMRSF.TXT

  2. DestinationName property values can be created dynamically by using operands to create the DestinationName:

    Table 13: Operands for dynamic file name creation
  3. Operand
    Description
    Example
    <TIMEHHMMSS>
    creates a current time stamp as String in the format HHMMSS (from the original HH:MM:SS, but w/o delimiters)
    DestinationPath=C:/POS_DAT; DestinationName =VERKASS/ITEMR_<TIMEHHMMSS>.TXT

    creates

    C:\\POS_DAT\VERKASS\ITEMR_140733.TXT

    <DATEDDMMYYYY>
    current date stamp String in German format DDMMYYYY (from the original DD.MM.YYYY, but w/o delimiters)
    DestinationPath=C:/POS_DAT; DestinationName =VERKASS/ITEMR_<DATEDDMMYYYY>.TXT

    creates

    C:\\POS_DAT\VERKASS\ITEMR_03122007.TXT

    <DATEYYYYDDMM>
    current date stamp String in en_US format YYYYDDMM (from the original YYYY-DD-MM., but w/o delimiters)
    (equivalent to <DATEDDMMYYYY>)
    <TRANSID_8>
    last 8-digits of the TransactionId (EventId) from the JMS custom head
    TransactionId=99912345678 and DestinationPath=C:/POS_DAT; DestinationName =VERKASS/<TRANSID_8>.TIT

    create target resource

    C:\\POS_DAT\VERKASS\12345678.TIT

    If the TransactionId has less then 8 characters, the DestinationName will be created with leading zeros (e.g. TransactionId=1234 would lead to DestinationName=00001234.TIT)

    Note: It is recommended to confirm different file types in different confirmation directories to avoid overwriting files with same (truncated) TxId, e.g.

    DestinationName=VERKASS/TIT/<TRANSID_8>.TIT

    <TRANSID>
    all digits of the TransactionId (EventId) from the JMS header
    TransactionId=99912345678 and DestinationPath=C:/POS_DAT; DestinationName =VERKASS/ITEMR_<DATEDDMMYYYY>-<TRANSID>.TXT

    creates target resource

    C:\\POS_DAT\VERKASS\ITEMR_03122007-99912345678.TXT


Combinations of these operands are also valid, e.g.
Configured DestinationPath=C:/POS_DAT; DestinationName =VERKASS/ITEMR_<DATEDDMMYYYY>-<TIMEHHMMSS>.TXT
creates target file with the current date time in the name:
C:\\POS_DAT\VERKASS\ITEMR_03122007-140733.TXT

  1. File name convention for BuildInterval<>0:
    If target file is built out of a sequence of message (SequenceNo <>1 && BuildInterval=0) or the target file is filled with the content of all messages received within a defined BuildInterval interval, the target file name is set through the first message of the sequence (following the rules under 1.)

  2. DestinationPath and DestinationName are created on the target system if they do not exist:
    If the provided destination path and file name do not exist, they will be created. Insufficient access rights will cause the transaction to fail.

  3. Example source and destination settings for retail PoS Systems:
    • For PoS files from Back-end to the Store (BUC100, FTP):
      DestinationPath=/POS_DAT/VERKASS
    • For Store Server files from Back-end to the Store (BUC102, Local File System):
      DestinationPath=C:/VERKASS
    • For PoS files from Store to Back-end (BUC101, FTP):
      DestinationPath=/POS_DAT/ENTKASS
      (In this case the property DestinationPath contains the directory that is monitored for a given file.)

  4. Destination file configuration examples:
    1. Configuration example for the ITEMR.TXT file (fixed file name):
      fixed default path = C:/POS_DAT/
      fixed default file name = ITEMR.TXT
      new: relative path name can be added: C:/POS_DAT/VERKASS/ITEMR.TXT
      PriceUpdFile[Description:Price Update File;TransportType:FTP;TransferMode:ASCII;DestinationCreationMode:APPEND;DestinationPath:/POS_DAT;DestinationName:VERKASS/ITEMR.TXT;Encoding:UTF-8;ftpServer:<ftp_server_name>;ftpServerPort:21;ftpPassive:true;ftpUser:1234;ftpPassword:<ftp_passwd>;ftpType:4690;queueType:FTP]
    2. Configuration example for the ITEMR.TXT file (dynamic file name):
      fixed default path = C:/POS_DAT/
      dynamic default file name = VERKASS/<TRANSID_8>.TIT
      PriceUpdFile[Description:Price Update File;TransportType:FTP;TransferMode:ASCII;DestinationCreationMode:APPEND;DestinationPath:/POS_DAT;DestinationName:VERKASS/<TRANSID_8>.TIT;Encoding:UTF-8;ftpServer:<ftp_server_name>;ftpServerPort:21;ftpPassive:true;ftpUser:1234;ftpPassword:<ftp_passwd>;ftpType:4690;queueType:FTP]

    3. Default configuration for BUC100:
      PriceUpdateFile (ITEMR.TXT) default config in XPDinteg.xml
      PriceUpdFile[Description:Price Update File;TransportType:FTP;TransferMode:ASCII;DestinationCreationMode:APPEND;DestinationPath:/POS_DAT;DestinationName:VERKASS/<TRANSID_8>.TIT ;Encoding:UTF-8;ftpServer:<ftp_server_name>;ftpServerPort:21;ftpPassive:true;ftpUser:1234;ftpPassword:<ftp_passwd>;ftpType:4690;queueType:FTP]

Add footer to generated target files


Messages can carry content for a given target file. Under certain circumstances, it might be not sufficient to just detach the message payload as target file. The file content might need formatting or it might be required to insert additional data (e.g. add file footer with dynamically created information).

For example, the 4690 PoS Controller requires a defined file footer line in order to process Price Update Files. This can be addressed by creating File Preprocessing Activities which are processed before the created target file is transferred from the Store Server to the 4690 Controller.

The BuildPriceUpdateFileFooterActivity in the buc100_PutPriceUpdate.flow addresses an example retail requirement for the Price Update File footer (see <XPDINTEG_HOME>/flowdefs). The following file footer generation algorithm was implemented as reference:

With the variables $1-$7 representing the following values, the footer line will be built using the algorithm in Listing 23:

  • $1- Date in YYMMDD format
  • $2- Time in HHMM format
  • $3- File Name (this will consume at least 12 characters, if the filename has only 5 characters, 7 white spaces must be added after it)
  • $4- Line Count before applying the footer
  • $5- Word Count before applying the footer
  • $6- Byte Count before applying the footer
  • $7- Byte by Byte algorithms (always set to 5 zeros)
  • $8- Byte Count of first line (This is considered as the first line in the message payload which is interpreted as file. It is NOT the first line of the destination file if the destination file already exists!).

Listing 23: Footer line creation algorithm


Footer line = %6s %4s ENDE %12s %s %s %s %s",$1,$2,$3,$4,$5,$6,$7,$8


Table 14: Example for retail price update file footer

Creation Mode
YYMMDD

($1)

HHMM

($2)

ENDE
ITEMR.TXT

($3)

LINE count

($4)

WORD count

($5)

BYTE count

($6)

BYTE-BY-BYTE ALGORITHM

($7)

BYTE count of 1st line in message

($8)

Sample value
070814
0953
ENDE
FILENAME
616
17422
130592
00000
128

Browse directory


The Expeditor integrator supports requesting a directory listing. A request message can be sent to the Expeditor integrator which follows the JMS custom header definition in Table 3. This request message is an application control message and must be sent to the CtrlQ.


Table 15: Browse Directory message definition
MessagePurposeTransportTypeResourceTypeRequired custom header properties and values / Comment
BrowseDirectoryFTPNot set
  • ResourceType is not used
  • DestinationPath
  • ResourceCmd (here: ftpServer:value1;ftpServerPort:value2;ftpPassive:value3;ftpUser:value4;ftpPassword:value5;ftpType:value6) Please, use the property-value pairs of the XPDinteg.xml FTP properties (e.g. ResourceCmd=FtpServer:192.168.1.2;FtpServerPort:21;FtpPassive:true;FtpUser:test;FtpPassword:test;FtpType:DEFAULT)
  • MessageId, TransactionId, LocationId, MessageSrcId
LocalFileSystem
  • ResourceType is not used
  • DestinationPath
  • MessageId, TransactionId, LocationId, MessageSrcId
SSH
  • ResourceType is not used
  • DestinationPath
  • ResourceCmd (here: sshServer:value1;sshServerPort:value2;sshUser:value4;sshPassword:value5;sshType:value6) Please, use the property-value pairs of the XPDinteg.xml FTP properties (e.g. ResourceCmd=FtpServer:192.168.1.2;FtpServerPort:21;FtpPassive:true;FtpUser:test;FtpPassword:test;FtpType:DEFAULT)
  • MessageId, TransactionId, LocationId, MessageSrcId
  • The TransportType defines whether a local file system directory, a remote FTP or SSH directory must be accessed.
  • The DestinationPath property contains the directory of which the file listing is requested.
  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the response message can be created appropriately.

The JMS Adapter (Resource Adapter) recognizes a new message and fires the corresponding default event with this topic:
  • com/ibm/integrator/flowtriggerevent/BrowseDirectory/FTP/JmsAdapter or
  • com/ibm/integrator/flowtriggerevent/BrowseDirectory/LocalFileSystem/JmsAdapter
  • com/ibm/integrator/flowtriggerevent/BrowseDirectory/SSH/JmsAdapter

This event is received by the ACS which kicks off the configured default Browse Directory flow (in <XPDINTEG_HOME>/flowdefs/system):
  • Flow file name for FTP directory: Default_BrowseFtpDir.flow or
  • Flow file name for local file system directory: Default_BrowseLocalFileSystemDir.flow
  • Flow file name for local file system directory: Default_BrowseSshDir.flow

Depending on the TransportType, the triggered flow will contain either
  • BrowseLocalFileSystemDirectoryActivity or
  • BrowseFtpDirectoryActivity or
  • BrowseSshDirectoryActivity

The created reply message will contain the properties and values according to Table 4.

Table 16: Reply message custom header properties and values for Browse Directory
Reply message custom header properties and values
Comments
ResourceType:not_set

Encoding:UTF-8

TransferMode:ASCII

MessagePurpose: BrowseDirectory

TransportType:FTP | LocalFileSystem | SSH

MessageId:<LocationId>_<date/time_stamp_in_long>_<static_counter>

TransactionId:{<TransactionId_of_reqMsg> | :<LocationId>_<date/time_stamp_in_long>_<static_counter>}

EndOfData:true

SequenceNo:1

LocationId:Store100

DestinationPath:<DIRPATH=DestinationPath_of_reqMsg>

MessagePriority:<TransferPriority_of_reqMsg>

(JMS Message priority:MessagePriority)

TimeStamp:<creation_time_of_dir_listing>

MessageSrcId:<xpdinteg_hostname>

ResourceType is not used.

TransactionId is set to the TransactionId of the request message. If this is not available, it is uniquely set according to Expeditor integrator ID schema.

MessagePriority is set to the TransferPriority in the request message. If it is not set, the default value = 0 is used.

The JMS message priority is set to the value of the MessagePriority custom header property (possible values: 0-9; [0]-lowest, [9]-highest).

The message body (payload) contains an XML structure with the names of the files in the directory of interest.

Listing 24 : XML structure for Browse Directory reply message payload



<?xml version="1.0" encoding="utf-8" ?>
<listing type=”listingtype” targetName=”target”>
	<listing-item type=”itemtype” name=”name”/>
</listing>


where
  • listingtype indicates the nature of the resource queried, e.g. ”FTP” or ”LocalFileSystem”.
  • target indicates the target location queried i.e. a directory name.
  • itemtype indicates an individual item type in the list, e.g. ”File” or ”Directory”.
  • name indicates the name for the item in question, i.e. the file name.


Drain queues


The Expeditor integrator supports command messages that trigger the content deletion of local Expeditor integrator queues. A Drain Queue request message can be sent to the Expeditor integrator which follows the JMS custom header definition in Table 3 of chapter 2.4.2 Supported Custom Header Properties for Inbound Messages. This request message is an application control message and must be sent to the Expeditor integrator CtrlQ. All messages that are stored in the requested local queue will be deleted.
Note: This is a very powerful command and must be handled with great care! Messages that were received within a transactional context might be deleted. A back-up copy of these messages is not available after deletion!
It is recommended to only use this command when remote Expeditor integrator runtime needs to be re-set, no back-end flows are running and previous Browse Queue command provided a list of messages that can be deleted. This command should only be used for house-keeping (e.g. delete content of DeadLetter queue regularly).

Table 17: Drain Queue message definition

MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
DrainQueue
-
-
  • TransportType and ResourceType are not used
  • DestinationName (jndiDestinationKey of queue)
  • MessageId, TransactionId, LocationId, MessageSrcId

  • The DestinationName property contains the jndiDestinationKey value (queue name) of the local queue of which the listing is requested.
  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the log messages can be created appropriately.

The JMS Adapter (Resource Adapter) recognizes a new message and fires the corresponding event with this topic:
com/ibm/integrator/flowtriggerevent/DrainQueue/MESSAGE/JmsAdapter
This event is received by the Application Control Service which kicks off the configured default Drain Queue flow (in <XPDINTEG_HOME>/flowdefs/system):
Flow file name: Default_DrainQueue.flow
The triggered default flow will contain
DrainQueueActivity

Note: There is no corresponding reply message. Log messages are available for appropriate status information.

Browse queues


The Expeditor integrator supports requesting for a list of all messages in a local queue. This list contains the MessageIds of all messages that are currently stored in this queue. A Browse Queue request message can be sent to the Expeditor integrator which follows the JMS custom header definition in Table 3 of chapter 2.4.2 Supported Custom Header Properties for Inbound Messages. This request message is an application control message and must be sent to the Expeditor integrator CtrlQ.

Table 18: Browse Queue message definition

MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
BrowseQueue
-
-
  • TransportType and ResourceType are not used
  • DestinationName (jndiDestinationKey of queue)
  • MessageId, TransactionId, LocationId, MessageSrcId
  • The DestinationName property contains the jndiDestinationKey value (queue name) of the local queue of which the listing is requested.
  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the response message can be created appropriately.

The JMS Adapter (Resource Adapter) recognizes a new message and fires the corresponding event with this topic:
com/ibm/integrator/flowtriggerevent/BrowseQueue/MESSAGE/JmsAdapter
This event is received by the Application Control Service which kicks off the configured default Browse Queue flow (in <XPDINTEG_HOME>/flowdefs/system):
Flow file name: Default_BrowseQueue.flow
The triggered default flow will contain
BrowseQueueActivity

The created reply message will contain the properties and values according to Table 4.


Table 19: Reply message custom header properties and values for Browse Queue
Reply message custom header properties and values
Comments
ResourceType: not set
Encoding:UTF-8
TransferMode:ASCII
MessagePurpose: BrowseQueue
TransportType:Message
MessageId:<LocationId>_<date/time_stamp_in_long>_<static_counter>
TransactionId:{<TransactionId_of_reqMsg> | :<LocationId>_<date/time_stamp_in_long>_<static_counter>}
EndOfData:true
SequenceNo:1
LocationId:Store100
DestinationName:< jndiDestinationKey of queue =DestinationName_of_reqMsg>
MessagePriority:<TransferPriority_of_reqMsg>
(JMS Message priority:MessagePriority)
TimeStamp:<creation_time_of_queue_listing>
MessageSrcId:<xpdinteg_hostname>
Message requests queue content listing (listing of message IDs)

ResourceType is not used.

TransactionId is set to the TransactionId of the request message. If this is not available, it is uniquely set according to Expeditor integrator ID schema.

MessagePriority is set to the TransferPriority in the request message. If this is not set, the default value = 0 is used.

The JMS message priority is set to the value of the MessagePriority custom header property (possible values: 0-9; [0]-lowest, [9]-highest).


The message body (payload) contains an XML structure with the MessageIds of the messages in the local queue of interest.


Listing 25 : XML structure for Browse Queue reply message payload

<?xml version="1.0" encoding="utf-8" ?>
<listing type=”listingtype” targetName=”target”>
	<listing-item type=”itemtype” name=”name”/>
</listing>


This is an unformatted list of all value-pairs of the JMS custom header properties of all messages in the queried queue where
  • listingtype indicates the nature of the resource queried, here “message destination” .
  • target indicates the target location queried i.e. jndi name of the Lotus Expeditor micro broker queue
  • itemtype indicates the user defined headers of the message
  • name indicates the value of the above headers in the message.


Execute Script


The Expeditor integrator supports control command messages that trigger the execution of script files that are provided in the message payload. A script file is transmitted in a message to the Expeditor integrator. The script file is detached to the configured (or set in the message header) local target directory and executed.

An Execute Script request message can be sent to the Expeditor integrator which follows the JMS custom header definition in Table 3 of chapter 2.4.2 Supported Custom Header Properties for Inbound Messages. This request message is an application control message and must be sent to the Expeditor integrator CtrlQ.

Note: This is a very powerful command and must be handled with great care! Script files run unattended outside Expeditor integrator’s control (not in transactional context) and can damage the whole target system!
It is recommended to only use this command if no other controlled alternative is available. This command must be specifically allowed in the default FileExecuteActivity settings of the Expeditor integrator configuration (set EnableScriptExecution=TRUE under the XPDINTEG_FILE_EXECUTE default configuration in XPDinteg.xml to allow script execution of the transferred script file; it is set to FALSE by default).
There is an additional ACS Activity ExecuteLocalScript which can take the file location of a locally stored script file as Activity Context Parameter input and executes it (XPDINTEG_EXECUTE_LOCAL_SCRIPT). This activity can also be disabled by the default configuration in the XPDinteg.xml (see details in Table 27: Overview of existing Application Control Service Activities).
Note: These settings can be overridden in each ACS flow in which these activities are used.

Table 20: Execute Script message definition

MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
ExecuteScript
-
LocalFileSystemFile
  • ResourceType is set to LocalFileSystemFile
  • DestinationPath & -Name
  • DestinationCreationMode (APPEND | OVERWRITE)
  • MessageId, TransactionId, LocationId, MessageSrcId
  • The DestinationPath and -Name properties contain the target path in the local file system where the script file in the payload is detached to and is then executed. If no payload is provided and a file with the matching DestinationPath/-Name already exists, this will be executed instead.
  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the log message can be created appropriately.

The JMS Adapter (Resource Adapter) recognizes a new message in the CtrlQ and fires the corresponding event with this topic:
com/ibm/integrator/flowtriggerevent/ExecuteScript/LocalFileSystem/ScriptFile/JmsAdapter

This event is received by the Application Control Service which kicks off the configured default Execute Script flow (in <XPDINTEG_HOME>/flowdefs/system):
Flow file name: Default_FileExecute.flow

The triggered default flow will contain
FileExecuteActivity


Listing 26 shows an example of a script file that can be transferred with the ExecuteScript control message.

Listing 26: ExecuteScript file examples

dir
ping 10.10.10.10
mkdir testdir



The FileExecuteActivity executes the commands and displays the results in the Expeditor integrator console. This activity can explicitly be further enabled/disabled by setting the context parameter EnableScriptExecution to TRUE or FALSE.

Note: There is no corresponding reply message. Log messages are available for appropriate status information.

Platform restart


The Expeditor integrator supports control messages that trigger stopping and re-starting of the complete runtime.
A Platform Restart request message can be sent to the Expeditor integrator which follows the JMS custom header definition in Table 3 of chapter 2.4.2 Supported Custom Header Properties for Inbound Messages. This request message is an application control message and must be sent to the Expeditor integrator CtrlQ.

Note: This is a very powerful command and must be handled with great care! Most of the all, the STOP operation should only be executed in emergency cases!
It is recommended to only use this command if no other controlled alternative is available. Furthermore, it is recommended to consider using a credentials check before the Platform Restart flow is executed (see details in the Installing and Configuring the IBM Lotus Expeditor integrator platform, see Ref_1).

Table 21: Platform Restart message definition

MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
PlatformRestart
-
-
-ResourceCmd=Command:{restart|stop};Param:console,reset
-MessageId, TransactionId, LocationId, MessageSrcId

  • The ResourceCmd specifies the executed operation:
    ResourceCmd=Command:{restart|stop};Param:console,reset
    The Command specifies whether to restart or stop the Expeditor integrator runtime. The Param options further define whether:
    console – runtime runs in an open OSGi Console (recommended)
    reset –Expeditor integrator should be re-set before restarting (Careful: re-creates all local messaging components and deletes existing messages in queues!)

  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the log message can be created appropriately.

The JMS Adapter (Resource Adapter) recognizes a new message in the CtrlQ and fires the corresponding event with this topic:
com/ibm/integrator/flowtriggerevent/PlatformRestart/LocalFileSystem/JmsAdapter
This event is received by the Application Control Service which kicks off the configured default Platform Restart flow (in <XPDINTEG_HOME>/flowdefs/system):
Flow file name: Default_PlatformRestart.flow
The triggered default flow will contain
<XPDintegActivity
Name="PlatformRestart_PlatformRestart"
ActivityName="XPDINTEG_PLATFORM_RESTART"
LocalScriptFile="services/XPDintegRestart.bat"
Command="restart"
Param="console"/>

The PlatformRestart Activity executes the XPDintegRestart.bat script and displays the results in the Expeditor integrator console.

Note: There is no corresponding reply message. Log messages are available for appropriate status information.


Configuration change process


Please, refer to the Installing and Configuring the IBM Lotus Expeditor integrator platform (see Ref_1) for an introduction to the different configuration change options.
Configuration Update request messages for the general Expeditor integrator configuration (XPDinteg.xml) or the User Admin store configuration (XPDintegRoles.xml) can be sent to the Expeditor integrator which follow the JMS custom header definition in Table 3 of chapter 2.4.2 Supported Custom Header Properties for Inbound Messages. These request messages are application control messages and must be sent to the Expeditor integrator CtrlQ.

Table 22: ConfigUpdate message definition

MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
ConfigUpdate
-
ConfigUpdateFile
  • ResourceCmd={FILE | ParamList};[Command:{restart | stop};Param:console,reset]
  • DestinationPath & -Name
  • DestinationCreationMode (APPEND | OVERWRITE)
  • MessageId, TransactionId, LocationId, MessageSrcId
ConfigUpdate
-
UserConfigUpdateFile
  • ResourceCmd={UserConfigFILE | UserConfigParamList};[Command:{restart | stop};Param:console,reset]
  • DestinationPath & -Name
  • DestinationCreationMode (APPEND | OVERWRITE)
  • TransferConfirmationMode: NONE | DELETE | WriteOther
  • MessageId, TransactionId, LocationId, MessageSrcId

  • The ResourceCmd specifies the possible update modes:
    • Either a complete configuration file is transferred. Then the DestinationPath/-Name are also required.
    • or a list of parameters is sent in the message payload.

  • The DestinationPath and -Name properties contain the target path and name of the local file system to which the configuration file in the message payload is detached and from where the changes are applied
    (default would be <XPDINTEG_HOME>/config/new/XPDinteg.xml or <XPDINTEG_HOME>/config/XPDintegRoles.xml).

  • The TransferConfirmationMode property can only be used for updating the User Admin configuration:
    • NONE - received update file is stored in under the default location <XPDINTEG_HOME>/config. Important: The name of the transferred file is maintained!
    • DELETE – only the User Admin store configuration is updated, no local copy of XPDintegRoles.xml is is kept (recommended behaviour).
    • WriteOther - received update file is stored under the name and location specified under updatesFileLocation

  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the log message can be created appropriately.

  • The Command specifies whether to restart or stop the Expeditor integrator runtime. The Param options further define whether:
    console – runtime runs in an open OSGi Console (recommended)
    reset –Expeditor integrator should be re-set before restarting (Careful: re-creates all local messaging components and deletes existing messages in queues!)


There are four options for sending a configuration update to the remote Expeditor integrator runtime:
  1. Sending a complete configuration file in the message payload (XPDinteg.xml):
    • MessagePurpose=ConfigUpdate
    • ResourceCmd=FILE;[Command:{restart | stop};Param:console,reset]
  2. Sending a list of changed properties in the message only (for XPDinteg.xml).
    • MessagePurpose=ConfigUpdate
    • ResourceCmd=ParamList;[Command:{restart | stop};Param:console,reset]
      The message payload contains a list of selected properties of the XPDintegConfig.xml file. These properties are used to set the specific attributes of the integrator bundles using this flow. For example, the message body changing the Custom Log Service into Maintenance Mode would look like this:

      Listing 27: ConfigUpdate message payload for updating the Maintenance Mode property
      <?xml version="1.0" encoding="utf-8"?>
      <configurations>
          <configuration pid="com.ibm.rcp.integrator.customeventservice">
      <properties>
      	    <property name="MaintenanceMode" value="ON"/>
      </properties>
          </configuration>
      </configurations>


  3. Sending a complete User Admin store configuration file in the message payload (XPDintegRoles.xml):
    • MessagePurpose=ConfigUpdate
    • ResourceCmd=UserConfigFILE;[Command:{restart | stop};Param:console,reset]

  4. Sending a list of changed User Admin store configuration properties in the message only (for XPDintegRoles.xml).
    • MessagePurpose=ConfigUpdate
    • ResourceCmd=UserConfigParamList;[Command:{restart | stop};Param:console,reset]
      The message payload contains a list of selected properties of the XPDintegRoles.xml file.

For
ResourceCmd=FILE;[Command:{restart | stop};Param:console,reset]

the Default_ConfigUpdate.flow is triggered. This flow contains the following Activities which are sequentially executed:
  • MessageReadActivity – Reads the Message from the CtrlQ.
  • MessageToFileActivity – Converts the input message to a File. In memory representation of XPDinteg.xml file.
  • FileWriteToFileSystemActivity – Writes the in memory representation of XPDinteg.xml file into <XPDINTEG_HOME>/config directory.
  • TransformAndValidateActivity – Verfies the XPDinteg.xml file structure and transforms it into the XPDintegConfig.xml file and stores it the in memory.
  • FileWriteToFileSystemActivity – Writes the in memory XPDintegConfig.xml file into <XPDINTEG_HOME>/config/system folder.
  • ConfigStoreUpdateActivity – Transactional update of the OSGi configuration with the XPDintegConfig.xml file contents.
  • PlatformRestartActivity – Restarts the platform based on the ResoruceCmd Attributes.

For
ResourceCmd=ParamList;[Command:{restart | stop};Param:console,reset]

the Default_ConfigUpdateResourceCmd.flow is triggered. This flow contains the following Activities which are sequentially executed:
  • MessageReadActivity – Reads the Message from the CtrlQ.
  • RertriveAndUpdateConfigurationStoreActivity- Gets the configuration store using OSGi Configuration Admin and updates the information contained in the message payload. Creates an in memory representation XPDinegConfig.xml file.
  • FileWriteToFileSystemActivity – Writes the in memory representation of XPDintegConfig.xml file into <XPDINTEG_HOME>/config/system directory.
  • ConfigStoreUpdateActivity – Transactional update of the OSGi configuration with the XPDintegConfig.xml file contents.
  • PlatformRestartActivity – Restarts the platform based on the ResoruceCmd Attributes.

This topic is covered in further detail in the Installing and Configuring the IBM Lotus Expeditor integrator platform (see Ref_1).


Application update process


This topic is covered in detail in the Installing and Configuring the IBM Lotus Expeditor integrator platform (see Ref_1).

Run in Maintenance Mode


The Expeditor integrator supports control messages that trigger switching Expeditor integrator Maintenance Mode on or off.
A Maintenance toggle request message can be sent to the Expeditor integrator which follows the JMS custom header definition in Table 3 of chapter 2.4.2 Supported Custom Header Properties for Inbound Messages. This message is an application control message and must be sent to the Expeditor integrator CtrlQ.


Note: In Maintenance Mode, neither logging information nor events may be forwarded to the back-end (no monitoring information is created)!
It is configurable which information is still captured and may be even locally persisted (see details in the Installing and Configuring the IBM Lotus Expeditor integrator platform, Ref_1).


Table 23: Maintenance mode message definition
MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
Maintenance
-
-
-ResourceCmd={ON | OFF}; [Command:{restart | stop};Param:console,reset]
-MessageId, TransactionId, LocationId, MessageSrcId
  • The ResourceCmd specifies the executed operation:
    ResourceCmd={ON | OFF}; [Command:{restart | stop};Param:console,reset]
    If the ResourceCmd contains ON then all the bundles maintenance mode property is changed to <maintenance mode="ON"> and if the ResourceCmd contains OFF, then it is changed to <maintenance mode="OFF">.
    The Command specifies whether to restart or stop the Expeditor integrator runtime. The Param options further define whether:
    console – runtime runs in an open OSGi Console (recommended)
    reset –Expeditor integrator should be re-set before restarting (Careful: re-creates all local messaging components and deletes existing messages in queues!)
  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the log message can be created appropriately.

The JMS Adapter (Resource Adapter) recognizes a new message in the CtrlQ and fires the corresponding event with this topic:
com/ibm/integrator/flowtriggerevent/Maintenance/MESSAGE/JmsAdapter

This event is received by the Application Control Service which kicks off the configured default Maintenance flow (in <XPDINTEG_HOME>/flowdefs/system):
Flow file name: Default_MaintenanceModeUpdate.flow

The flow description of the Maintenance Mode is given below. It contains the following Application Control Service Activities which are executed sequentially:
  • MessageReadActivity – Reads the Maintenance message from the CtrlQ
  • RetrieveAndUpdateConfigurationStoreActivity – Gets the all the latest configuration of all the bundles from the Configuration Store, applies the latest <maintenance mode="…"> setting to all the bundles and generates the new XML File (XPDintegConfig.xml) with latest changes
  • FileWriteToFileSystemActivity – Writes the above generated file to config/system folder
  • ConfigStoreUpdateActivity – Updates the OSGi Config Admin Service’s Configuration Store with the latest XML File in a transactional manner.
  • PlatformRestartActivity – If the platform commands are given in the ResourceCmd attribute then this will restart the platform using the XPDintegSvc feature

This topic is covered in further detail in the Installing and Configuring the IBM Lotus Expeditor integrator platform (see Ref_1).

Put in Local Maintenance Mode (TECHNOLOGY PREVIEW CODE)


The Expeditor integrator supports a Local Maintenance Mode for allowing a defined upgrade procedure of the product itself. Therefore, when the Local Maintenance Mode is entered, Expeditor integrator processes all open work items such as messages in the queues, assures that the local message store is empty and shuts down gracefully afterwards. The /config/system/maint/StartLocalMaintenance.done file is written when the mode has been reached. After finishing this procedure, the message store does not contain valuable business information any more and the product can be updgraded or reseted without data loss.

Entering the Local Maintenance Mode can be triggered by a Local Filesystem File or a Control Message with the MessagePurpose “StartLocalMaintenance”.

Table 24: Local Maintenance mode message definition

MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
StartLocalMaintenance
-
-
-ResourceCmd={ON}; [Command:{restart | stop};Param:console,reset]

-MessageId, TransactionId, LocationId, MessageSrcId


· The ResourceCmd specifies the executed operation:

ResourceCmd={ON}; [Command:{restart | stop};Param:console,reset]

If the ResourceCmd contains ON then the Default_Local_Maintenance_Message.flow is started (Expeditor integrator blocks all incoming messages and tries to process all open jobs. When all messages have been processed, integrator is shutdown gracefully and the instance can be replaced with a new version)

The Command specifies whether to restart or stop the Expeditor integrator runtime. The Param options further define whether:

console – runtime runs in an open OSGi Console (recommended)

reset –Expeditor integrator should be re-set before restarting (Careful: re-creates all local messaging components and deletes existing messages in queues!)


· MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the log message can be created appropriately.

The JMS Adapter (Resource Adapter) recognizes a new message in the CtrlQ and fires the corresponding event with this topic:


com/ibm/integrator/flowtriggerevent/LocalMaintenance/MESSAGE/JmsAdapter

This event is received by the Application Control Service which kicks off the configured default Maintenance flow (in /flowdefs/system):

Flow file name: Default_Start_Local_Maintenance_Message.flow

The Local Maintenance Flow can also be started by creating this trigger file:


/config/system/maint/StartLocalMaintenance.txt

A LocalFileSystem adapter monitors for the existence of this file and fires this topic

com/ibm/integrator/flowtriggerevent/LocalMaintenance/LocalFileSystem/LocalMaintenanceFile/LocalFileSystemAdapter/system

to trigger the corresponding flow (in /flowdefs/system):

Flow file name: Default_Start_Local_Maintenance_File.flow

The flow description of the Local Maintenance Mode is given below. It contains the following Application Control Service Activities which are executed sequentially:


· Only for Start_Local_Maintenance_File.flow: FileReadLocalFileSystemActivity – Reads the trigger file

· ApplyNewMicroAclActivity – applies a new microbroker ACL file which does only allow micro broker clients connected to the local interface 127.0.0.1 to send and receive messages (for local processing). External clients connected to other IP interfaces are only allowed to receive messages.

· BundleControlActivity – Stops the REST Adapter plugin to avoid external clients to send messages to Expeditor integrator through the REST Adapter

· ResourceMonitorControlActivity – stops the following adapters to avoid further reception of data: XPDINTEG_FILE_SYSTEM_ADAPTER, XPDINTEG_FTP_ADAPTER,XPDINTEG_SSH_ADAPTER,XPDINTEG_HTTP_ADAPTER,XPDINTEG_JDBC_ADAPTER,XPDINTEG_GENERIC_ADAPTER.

· MbBridgeControlActivity – stops the Expeditor integrator inbound connections from the connected messaging back-end server to avoid receving further back-end data (stops the inbound flows for the micro broker bridge)

· WaitForQueueProcessing – waits until all pending messages have been processed (until all local queues are empty, apart from the XPDinteg_LocalDeadletterQ). After a time out, all messages that are still in local queues are removed to the XPDinteg_ServerDeadletterQ. This allows these messages to be stored and processed by the back-end messaging server.

· For Start_Local_Maintenance_File.flow: FileTransferConfirmationActivity – renames the trigger file in /config/system/maint/StartLocalMaintenance.done


For Start_Local_Maintenance_Message.flow: ObjectToStringActivity – creates the confirmation file /config/system/maint/StartLocalMaintenance.done

· PlatformRestartActivity – triggers Expeditor integrator platform shutdown

Note: The activity context parameters LocalScriptFile are adjusted to the target platform (Windows: XPDintegRestart.bat, Linux: XPdintegRestart.sh)!! E.g. for Windows:
LocalScriptFile="services/XPDintegRestart.bat"

Note: The existence of the StartLocalMaintenance.done file finally confirms the end of the Local Maintenance Flow. External tools can monitor for this file and start with the replacement with a new Expeditor integrator runtime.

Exceptions may be displayed during platform shutdown, because all Resource Adapters were already disabled and stopped during the process of putting Expeditor integrator into Local Maintenance Mode (e.g. com.ibm.mqttclient.v4.base.MqttNotConnectedException, javax.jms.JMSException or com.ibm.rcp.integrator.resourceadapters.ResourceException).

This topic is covered in further detail in the Installing and Configuring the IBM Lotus Expeditor integrator platform (see Ref_1)


Perform Requested Housekeeping


Please, refer to the Installing and Configuring the IBM Lotus Expeditor integrator platform (see Ref_1) for an introduction to the Expeditor integrator house keeping feature.

The House-keeping option can run automatically within a configurable time interval. Also, the resources which undergo this house keeping process can be configured. Threshold values can be defined and actions which are performed when these thresholds are exceeded (see Installing and Configuring the IBM Lotus Expeditor integrator platform, Ref_1).

In addition to the automatic house keeping, a house keeping request message can be sent to the Expeditor integrator which follows the JMS custom header definition in Table 3 of chapter 2.4.2 Supported Custom Header Properties for Inbound Messages. This message is an application control message and must be sent to the Expeditor integrator CtrlQ.


Table 25: HouseKeeping message definition
MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
HouseKeeping
-
-
  • MessageId, TransactionId, LocationId, MessageSrcId
  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the log message can be created appropriately.


The JMS Adapter (Resource Adapter) recognizes a new message in the CtrlQ and fires the corresponding event with this topic:
com/ibm/integrator/flowtriggerevent/Housekeeping

This event is received by the Application Control Service which kicks off the configured default house keeping flow (in <XPDINTEG_HOME>/flowdefs/system):
Flow file name: Default_HouseKeeping.flow

The triggered default flow will contain
  • HOUSE_KEEPING_LOCAL_FILE_SYSTEM_ACTIVITY – performs configured house keeping actions on given local files
  • HOUSE_KEEPING_JMS_ACTIVITY – performs configured house keeping actions on given local queues
  • HOUSE_KEEPING_SYSTEM_RESOURCES_ACTIVITY – performs configured house keeping actions on given system resources (monitoring actions)
  • XPDINTEG_FILE_WRITE_TO_FILE_SYSTEM – writes the house keeping report into the @nowiki@40file.
  • XPDINTEG_FILE_TO_MESSAGE_WRITE – sends the house keeping report log file to the back-end ResInQ.
  • XPDINTEG_FILE_COPY_USING_REFERENCE - backs up the old configuration file with a timestamp in its name.

Note: The STORE_XPD_FILE_WRITE_TO_FILE_SYSTEM and STORE_XPD_FILE_TO_MESSAGE_WRITE activities can have different combinations:
  • If both exist, the file is both written to the localfilesystem as /persistent/housekeeping_<date>.log and also sent to the backend ResInQ
  • If only STORE_XPD_FILE_WRITE_TO_FILE_SYSTEM exists, the file is only written to the local file system as /persistent/housekeeping_<date>.log
  • If only STORE_XPD_FILE_TO_MESSAGE_WRITE exists, the file data is only sent to the backend.


This topic is covered in further detail in the Installing and Configuring the IBM Lotus Expeditor integrator platform (see Ref_1).

Problem Determination Flow for IBM Support (ISA)


(ISA) is a software feature that collects appropriate platform and configuration information for the IBM Support. In case of problems, customers can run the ISA which creates a ZIP file with collected information. Customers can send this back to IBM Support for further investigation of the problem.

Please, refer to the IBM Lotus Expeditor Infocenter (see Ref_6) for an introduction to the IBM Support Assistant – ISA).

Expeditor integrator also supports the IBM Support Assistant. An ISA Collector request message can be sent to the Expeditor integrator which follows the JMS custom header definition in Table 3 of chapter 2.4.2 Supported Custom Header Properties for Inbound Messages. This message is an application control message and must be sent to the Expeditor integrator CtrlQ in order to start the Problem Determination Flow.

Table 26: ISACollector message definition

MessagePurpose
TransportType
ResourceType
Required custom header properties and values / Comment
ISACollector
-
-
  • MessageId, TransactionId, LocationId, MessageSrcId
  • MessageId, TransactionId, LocationId and MessageSrcId must be provided so that the log message can be created appropriately.

The JMS Adapter (Resource Adapter) recognizes a new message in the CtrlQ and fires the corresponding event with this topic:
com/ibm/integrator/flowtriggerevent/ISACollector/MESSAGE/JmsAdapter
This event is received by the Application Control Service which kicks off the configured default house keeping flow (in <XPDINTEG_HOME>/flowdefs/system):
Flow file name: Default_ProblemDetermination.flow
The triggered default flow will contain
  • XPDINTEG_MESSAGE_READ - reads the message and passes it on as output.
  • ISA_COLLECTOR_ACTIVITY - invokes the ISA Collector which leads to the generation of a ISA Collector ZIP file in a given folder. The output is the path to the created ZIP file.
  • XPDINTEG_ISA_COLLECTOR_ADDFILES_ACTIVITY - gets the ZIP file (from input), adds additional files and generates the FileResourceData out of it.


Reliable Data Exchange through Messaging


The Expeditor integrator uses the Lotus Expeditor micro broker and the micro broker bridge for reliable data exchange through messaging. This ensures that the back-end messaging system and the local data exchange at the location of the Expeditor integrator, e.g. in a retail store, are decoupled. Messages are delivered once and only once and as soon as network connectivity is available. Local and remote processes pass data on to the messaging system and continue processing, because locally submitted messages are considered as transferred.

The connectivity from the Expeditor integrator runtime to the local resources, e.g. in the retail example: connectivity of the Store Server to the 4690 PoS System (FTP Server), as well as to the back-end Message Broker is reliably maintained. The following situations are handled automatically:
  • Local resource is not available during Expeditor integrator start-up (e.g. FTP Server/4690 Controller):
    All Resource Adapters start up and keep on trying to connect to the monitored resource. As soon as the monitored queue manager, file system, FTP/SSH server, database etc. is available, it will be monitored as configured.

  • Back-end messaging system is not available during Expeditor integrator start-up:
    When the back-end Message Broker is not available during application start-up, the Resource Adapters (e.g. FTP, LocalFileSystem) will still monitor the configured files, convert them into messages and send them to the local Expeditor micro broker queues which are bridged to back-end queues. Whenever, the Message Broker back-end becomes available, these locally stored messages are passed on to the back-end by the micro broker bridge, without requiring a restart of the application.
    Messages that were received from the back-end will still be processed locally (according to the configured number of RetryAttempts and the set RetryInterval). If the target resource becomes not available within the configured tolerance intervals, the transaction will fail and appropriate status and log messages will be created. In this case, it is configurable whether the message(s) that could not be processed are discarded, put in the Deadletter queue or re-inserted into the inbound queue.

  • Local resource attached to the Expeditor runtime environment is not available during Expeditor integrator up time (e.g. FTP Server/4690 Controller):
    All Resource Adapters continue working and keep on trying to re-connect to the monitored resource. As soon as the monitored resource (queue, file system, FTP/SSH server, database resource) becomes available again, it will be monitored as configured.

  • Back-end messaging system is not available during Expeditor integrator up time:
    If the connection to the back-end messaging system is temporarily not available, the Expeditor integrator Resource Adapters will continue monitoring the configured resources (e.g. files), convert them into messages and send them to the local micro broker queues that are bridged to back-end queues. Whenever, the back-end Message Broker becomes available again, these locally stored messages are passed on to the back-end by the micro broker bridge, without requiring a restart of the application.


  • Actions Show Menu▼


expanded Attachments (0)
collapsed Attachments (0)
Edit the article to add or modify attachments.
expanded Versions (2)
collapsed Versions (2)
Version Comparison     
VersionDateChanged by              Summary of changes
21Jan 16, 2012, 8:57:13 AM~Miriam Chunutexli  
This version (2)May 31, 2013, 11:43:25 AM~Emile Xannilynivu  
expanded Comments (0)
collapsed Comments (0)
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedAbout
  • HCL Software
  • HCL Digital Solutions community
  • HCL Software Support
  • BlogsDigital Solutions blog
  • Community LinkHCL Software forums and blogs
  • About HCL Software
  • Privacy
  • Accessibility